Although the Internet offers services worldwide, these services may be accessed at some fixed location, i.e. home, office, school. With relocation from one of these locations to another, the applications and services that were initiated previously have to be re-initiated again. With the emerging popularity of notebooks, handhelds and other portable computing devices this limitation affects the flexibility of accessing the information superhighway.
The mobile Internet Protocol (IP) development promises to substitute the dependence on fixed points of Internet attachment with the flexibility of mobility. In a mobile networking, computing activities are not disrupted when the user changes his/her computer's point of attachment to the Internet. Instead, all the required reconnections occurs automatically and noninteractively.
One of the challenges of the mobile IP is to ensure that none of the activities initiated by the user are lost once the user changes its point of connection. When the user changes its point of connection, all the new operations and activities start to flow through the new point of attachment, through the new access router. The packets can no longer be diverted through a server that is attached to the original access router, which contains all the necessary information in maintaining all the operations that the user initiated prior to changing his/her location. As a result, the services that were in progress are prematurely terminated upon the user's change of a point of attachment.
In IP networks (mobile or not), it is common for services, such as web caching, to be deployed at access routers. Many servers, such as web caches, have two important properties. First, they are stateful. That is, they maintain information (state) about the service they are providing during the duration of a flow (for example, a TCP connection). Packets for a given flow cannot start going to a different server, because that server will not have the state required to continue providing the service. Second, the servers are transparent to the mobile node. That is, the mobile node does not know that its packets are passing through the server, and cannot intentionally direct packets to the server. Instead, the access router diverts packets to the server transparently to the mobile node.
The combination of stateful transparent servers and mobility across access routers creates a problem that is not solved by current mobile IP technology. When a mobile node changes access routers, and its flows stop going through the old access router and start going through the new access router, the packets can no longer be diverted by the old access router to the server that contains state about one or more flows, because the old access router no longer receives the packets. As a result, any services that were in progress will fail.
The most common way to deal with services in mobile IP is to provide the service not at the access router, but at some other “anchor router” that all packets traverse. For instance, RFC 2002, which applies to IPv4, requires that packets traverse a router called the Home Agent. If reverse tunneling is used, as specified in RFC 2344, then packets in both directions will traverse the Home Agent, and stateful transparent services can be attached there. IPv6 mobility, described in “Mobility Support in IPv6” by David Johnson and Charles Perkins, also uses a Home Agent, though in IPv6 its use is optional. Alternatively, hierarchical mobility in IPv6, description of which may be found in “Hierarchical MIPv6 mobility management (HMIPv6)” written by Hesham Soliman and Karim El-Malki, causes packets to go through a mobile anchor point, as long as the mobile node stays within a certain region. The 3GPP mobility architecture handles device mobility at a layer below IP, and requires that all packets for a given flow pass through an IP router called the GGSN (3GPP TS 23.060). In all of these architectures, the anchor router (the Home Agent, mobile anchor point, or GGSN) may be far from the mobile node. Because services like web caching perform better while located closer to the mobile node, these architectures limit the performance of transparent stateful services.
“Bidirectional Edge Tunnel Handover for IPv6” written by James Kempf, et al., teaches that all flows from a mobile node may be routed through the old access router. It does not, however, distinguish between different flows. Therefore, new flows must also go through the old access router. Once the mobile node obtains an address from the new access router, all flows stop traversing the old access router, whether they originated there or not. The publication makes no mention of services.
“Per-flow movement in MIPv6” by Soliman, et al., and “Flexible Network Support for Mobile Hosts” by X. Zhao teach that individual flows from a mobile node may be treated differently (for IPv6 and IPv4 respectively). These works only consider a case where a mobile node has multiple access routers (possibly through different types of access technology), and is able to direct flows individually through the different access routers.
The TIA IS-41 wireless mobility standard, described in chapter 6 of “Wireless and Mobile Network Architectures”, teaches that voice circuits are anchored at the Mobile Switching Center (MSC) where the circuit was initially established. However, IS-41 applies to voice circuits and not IP flows. Moreover, IS-41 mobile nodes deal with only a single flow at a time—the voice circuit.
Some U.S. Patents, more specifically, U.S. Pat. No. 5,325,362; No. 5,442,633; and No. 6,161,008, teach various means of updating IP addresses and routes from old to new access routers. None of them, however, consider the issue of transparent stateful services deployed at the access routers.
In U.S. Pat. No. 5,442,633, Liu teaches that services can be transferred from a mobile node'old access router to its new access router, either before or after the mobile node switches routers. This imposes the burden of transferring the service state, which may be substantial and, in many existing servers, not possible.
U.S. Pat. No. 6,160,804 and No. 6,256,300 teach the use of an anchor router as a way of hiding mobility from the remote node with which the mobile node is communicating. As with other anchor router schemes, this limits the performance of services that need to be located near the mobile node.